Many applications, such as streaming video, send packets at pre-determined nominal service rates. However, the actual throughput or receiving rate at mobile systems (hosts) is highly sensitive to changing network conditions and influenced by several factors, including available bandwidth. The throughput experienced by mobile hosts in wireless networks is further impacted by background noise due to constant location and topology changes, frequent handoff across base stations (radio cells), wireless signal fading and interference as well as to the inherent network infrastructure fluctuations, such as network load, large numbers of users, policing of packets and link utilizations. In order to utilize the available network resources, mobile users need the ability to adjust their behavior to highly fluctuating network conditions. This is especially critical in providing reasonable quality for real-time services such as video and web-browsing. To achieve this goal, mobile hosts need to accurately and reliably measure and estimate the run-time available network capacity.
The Throughput Estimator (TE) is considered an indispensable component of system architecture for accurately determining the throughput available to applications and for providing feedback to mechanisms that adapt service rates to network conditions. The need to include the TE component in the system architecture is also driven by QoS demands. A reliable and accurate estimate of network condition is crucial for maintaining adequate levels of services, and could be used as a threshold for admission control for differentiated services and for pre-allocation of resources.
TEs for wired networks place their emphasis on measuring and estimating physical link and network capacity characteristics, such as physical network latency and bandwidth. TEs for wired networks usually send a large set of data probes (packets) of different sizes, and measure round trip time (RTT) between source and destination. This approach focuses on estimating total available network capacity and provides estimates of network characteristics by using appropriate mathematical treatments to extract the useful information from obtained data and filtering out (reducing) noise. Research on throughput estimation for wired networks focuses on how to derive accurate and reliable TEs while minimizing the associated traffic overhead and on various mathematical models for processing the obtained data. These methods have several drawbacks when used for real-time throughput control for mobile users. In particular, the characteristics of the network are determined from statistics gathered during non-busy times, whereas the capacity or power to a wireless user varies depending on distance, the physical environment and geographic topology. Further, wireline algorithms assume that the reverse and forward channels capacities are equal, but this may not be true in wireless networks. Moreover, using schemes based on ping packets requires synchronization between users and networks to properly measure round trip times and one-way trip times, which may not be feasible in a wireless mobile network.
Other estimation techniques have been proposed in the field of traffic modeling including effective bandwidth modeling, self-similar traffic modeling, and handoff reservation modeling, to approximate the required capacity of a connection in order to reserve resources or perform admission control for a flow. In these techniques, the total network capacity is fixed but the behavior of the connection may change due to the nature of the application or congestion in the network. These methods are used for reservation of bandwidth but do not provide real-time throughput estimates.
Providing and managing diversified user needs and dynamic QoS adaptation to the available network resources becomes more difficult in the highly fluctuating environment that is characteristic of wireless networks. Known TEs for wireless networks estimate the available network capacity and studies thereof fall into two categories, i.e. system perceived performance and mobile user perceived performance. System perceived performance can be measured in terms of speed and response time as well as system availability, reliability and scalability. The workload for systems (middleware) in the wireless networks is characterized by requests from mobile hosts for long sessions but relatively short message sizes. The workload characteristic of wireless systems is due to the low bandwidth and long latency characteristics of the current wireless infrastructure. In a real application, the communication between network server and a mobile host is influenced by wireless bandwidth which is vulnerable to constant disruption due to unevenly distributed coverage and movement of the mobile host. Therefore, user perceived performance is measured in an end-to-end fashion, which cannot directly be derived from system perceived performance. A reliable and accurate throughput estimator is a desirable system component for its ability to predict the time elapsed in serving a request. The obtained information in turn can be used to determine whether the incoming request is accepted or not based on its service level and the overall system conditions.
Implicit real-time throughput estimation per user for an ongoing connection has been utilized by transport protocols such as TCP and RTCP. In RTCP the sender uses the current and previous values of loss and delay reported by the receiver to estimate bandwidth and appropriately decrease, increase or maintain the current sending rate to reflect the over-loaded, under-loaded or loaded states of the network, respectively. In TCP the reduction of the window size, i.e. reduced sending rate, occurs when acknowledgements are not received before time-out, based on the assumption that the lack of acknowledgement indicates packet loss and therefore network congestion. Once packet acknowledgements are received in a timely fashion, the assumption is that throughput is available to the user and TCP starts to increase its window size, or sending rate, to reflect the resource availability in the network. TCP inherently does not work well in the lossy environment of wireless networks. If high packet loss occurs, TCP assumes the network is congested and dramatically reduces the sending throughput. In actuality, higher throughput may be available.
There remains a need in the art for improvements in the technology of throughput estimation, particularly in for wireless networks.